又到了一年一度的鐵人賽,這幾年區塊鏈的議題,一起都有一定熱度,但自己本身一直都沒有什麼興趣,終於想說透過今年的鐵人賽,強迫自己好好認識區塊鏈&DAPP,相關應用。
區塊鏈的起源源自於計算機分散式計算中很有名的,拜占庭將軍問題(Byzantine Generals Problem),
下面引述 wiki
一組拜占庭將軍分別各率領一支軍隊共同圍困一座城市。為了簡化問題,將各支軍隊的行動策略限定為進攻或撤離兩種。因為部分軍隊進攻部分軍隊撤離可能會造成災難性後果,因此各位將軍必須通過投票來達成一致策略,即所有軍隊一起進攻或所有軍隊一起撤離。因為各位將軍分處城市不同方向,他們只能通過信使互相聯絡。在投票過程中每位將軍都將自己投票給進攻還是撤退的資訊通過信使分別通知其他所有將軍,這樣一來每位將軍根據自己的投票和其他所有將軍送來的資訊就可以知道共同的投票結果而決定行動策略。
大家看一下上面內容,應該有發現一個問題,如果將軍中出現叛徒,那個投票結果就會有所改變。所以區塊鏈是在既有的分散性中加入的加密性,加密就是為了保護如果有偽造投票,那怎麼讓共識可以正確的執行。
區塊鏈就是建構在去中心化,沒有一個統一的管理中心,所有東西都是一個共識投票的決定,所有的數據都是可以公開的,他的每個節點都可以獨立運作,只要攻擊者不是掌握50%以上的節點,基本上他無法竄改上面任何的資料。
大家對於區塊鏈裏面的應用,最耳熟能詳的就是『比特幣』跟『以太幣』。
後續大概在2008-2009,有一位在網路上自稱中本聰的人發表一篇論文『比特幣:一種點對點的電子現金系統』。後續就誕生了『比特幣』。
在來到了大概是2013-2014年,以太幣受到了比特幣的啟發,並且多了很多相關應用,現在最知名的就是『智能合約』,接下來的30天的鐵人賽也會是以『以太幣』的平台『以太坊』以及智能合約相關應用去做一系列的學習筆記。